body {
    > .neo-viewport {
        // without the snap scrolling it is possible to scroll the viewport
        // by the height of the header toolbar outside the visible area
        // see: https://github.com/neomjs/neo/issues/5715
        position: fixed;
    }
}


.neo-viewport {
    // sometimes when transitioning between card & cube layouts, the flex value does get lost
    // see: https://github.com/neomjs/neo/issues/5637
    .portal-main-content {
        flex: 1 1 auto;

        > * {
            flex: 1 0 100%;
        }
    }

    .neo-layout-cube {
        &.neo-animate {
            .neo-box {
                transition: transform 800ms ease-in-out;
            }
        }

        .neo-face {
            opacity: 0.8;
            transition: opacity 50ms ease-out;
        }

        .neo-plane {
            transform: translateZ(0px);
        }
    }

    // the style will get used inside home & learn
    .neo-worker-setup {
        align-items     : center;
        background-color: #17141c;
        display         : flex;
        height          : 100%;
        justify-content : center;
        padding         : 20px;
        width           : 100%;

        --fill-opacity  : 0.05;
        --stroke-opacity: 0.05;

        &:hover {
            --fill-opacity  : 1;
            --stroke-opacity: 1;
        }
    }
}
